package org.ws.task.builder;

import org.ws.task.model.TaskConfig;

public final class TaskBuilder {

    private String name;

    private TaskBuilder(String name) {
        this.name = name;
    }

    public static TaskBuilder builder(String name){
        return new TaskBuilder(name);
    }

    public TaskConfigBuilder config(){
        return new TaskConfigBuilder(this.name,this);
    }

    public <T> PullTaskBuilder<T> pull(TaskConfig config){
        return new PullTaskBuilder(config);
    }

    public <T> PushTaskBuilder<T> push(TaskConfig config){
        return new PushTaskBuilder(config);
    }

}
